package com.bootdo.order.service;

import com.bootdo.merchant.domain.MerchantDO;
import com.bootdo.order.domain.OrderDO;
import com.bootdo.order.domain.OrderPayDO;
import com.bootdo.payee.domain.PaymentCodeDO;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * @Desc
 * @date 2019/11/18
 * ${tags}
 */
@Service
public interface OrderService {

    void check(OrderDO order) throws Exception;

    void checkSign(OrderDO order) throws Exception;

    void checkMerchant(OrderDO order) throws Exception;

    OrderDO save(OrderDO order, Long payeeId) throws Exception;

    PaymentCodeDO findQrcode(int payType, double money, String orderId);

    OrderPayDO saveOrderPay(OrderDO order, String qrCode, String qrCodeRealName , String payAccountPassword);

    void saveQuota(OrderPayDO orderPay);

    Map<String, Object> retMerc(OrderDO order, PaymentCodeDO paymentCode);

    Map<String, Object> retMercs(OrderDO order) throws Exception ;

    void sendMsg(Map<String, Object> map);

    Map<String, String> queryOrder(OrderDO order) throws Exception;

    Map<String, String> queryRet(OrderDO orders) throws Exception;

    List<MerchantDO> findMerchant();

    OrderDO createOrderParam(OrderDO order) throws Exception;
}
